/*
REWRITTEN FROM SCRATCH BY PUSSYWIZARD, IT OWNS NOW!
*/

#ifndef DEF_TOC_H
#define DEF_TOC_H

enum eData
{
	BOSS_GRAND_CHAMPIONS							= 0,
	BOSS_ARGENT_CHALLENGE							= 1,
	BOSS_BLACK_KNIGHT								= 2,
	MAX_ENCOUNTER									= 3,
	DATA_INSTANCE_PROGRESS							= 4,

	DATA_ANNOUNCER									= 5,
	DATA_ANNOUNCER_GOSSIP_SELECT,
	DATA_GRAND_CHAMPION_REACHED_DEST,
	DATA_MOUNT_DIED,
	DATA_REACHED_NEW_MOUNT,
	DATA_GRAND_CHAMPION_PICKED_NEW_VEHICLE,
	DATA_GRAND_CHAMPION_DIED,
	DATA_ARGENT_SOLDIER_DEFEATED,
	DATA_SKELETAL_GRYPHON_LANDED,
	DATA_TEAMID_IN_INSTANCE,
	DATA_PALETRESS,
	DATA_PALETRESS2,
	DATA_EADIRC,
	DATA_BLACK_KNIGHT,
	DATA_MEMORY_ENTRY,
	DATA_ACHIEV_IVE_HAD_WORSE,
};

enum eProgress
{
	INSTANCE_PROGRESS_INITIAL = 0,
	INSTANCE_PROGRESS_GRAND_CHAMPIONS_REACHED_DEST,
	INSTANCE_PROGRESS_CHAMPION_GROUP_DIED_1,
	INSTANCE_PROGRESS_CHAMPION_GROUP_DIED_2,
	INSTANCE_PROGRESS_CHAMPION_GROUP_DIED_3,
	INSTANCE_PROGRESS_CHAMPIONS_UNMOUNTED,
	INSTANCE_PROGRESS_CHAMPIONS_DEAD,
	INSTANCE_PROGRESS_ARGENT_SOLDIERS_DIED,
	INSTANCE_PROGRESS_ARGENT_CHALLENGE_DIED,
	INSTANCE_PROGRESS_FINISHED,
};

enum eEvents
{
	EVENT_NULL = 0,
	EVENT_CHECK_PLAYERS,
	EVENT_CLOSE_GATE,
	EVENT_SUMMON_GRAND_CHAMPION_1,
	EVENT_SUMMON_GRAND_CHAMPION_2,
	EVENT_SUMMON_GRAND_CHAMPION_3,
	EVENT_YELL_WELCOME_2,
	EVENT_GRAND_GROUP_1_MOVE_MIDDLE,
	EVENT_GRAND_GROUP_1_ATTACK,
	EVENT_GRAND_GROUP_2_MOVE_MIDDLE,
	EVENT_GRAND_GROUP_2_ATTACK,
	EVENT_GRAND_GROUP_3_MOVE_MIDDLE,
	EVENT_GRAND_GROUP_3_ATTACK,
	EVENT_GRAND_CHAMPIONS_MOVE_MIDDLE,
	EVENT_GRAND_CHAMPIONS_MOUNTS_ATTACK,
	EVENT_GRAND_CHAMPIONS_MOVE_SIDE,
	EVENT_GRAND_CHAMPIONS_ATTACK,
	EVENT_GRATZ_SLAIN_CHAMPIONS,
	EVENT_RESTORE_ANNOUNCER_GOSSIP,
	EVENT_START_ARGENT_CHALLENGE_INTRO,
	EVENT_SUMMON_ARGENT_CHALLENGE,
	EVENT_ARGENT_CHALLENGE_SAY_1,
	EVENT_ARGENT_CHALLENGE_SAY_2,
	EVENT_ARGENT_SOLDIER_GROUP_ATTACK,
	EVENT_ARGENT_CHALLENGE_MOVE_FORWARD,
	EVENT_ARGENT_CHALLENGE_ATTACK,
	EVENT_ARGENT_CHALLENGE_RUN_MIDDLE,
	EVENT_ARGENT_CHALLENGE_LEAVE_CHEST,
	EVENT_ARGENT_CHALLENGE_DISAPPEAR,
	EVENT_SUMMON_BLACK_KNIGHT,
	EVENT_START_BLACK_KNIGHT_SCENE,
	EVENT_BLACK_KNIGHT_CAST_ANNOUNCER,
	EVENT_BLACK_KNIGHT_KILL_ANNOUNCER,
	EVENT_BLACK_KNIGHT_MOVE_FORWARD,
	EVENT_BLACK_KNIGHT_SAY_TASK,
	EVENT_BLACK_KNIGHT_ATTACK,
};

enum eNpcs
{
	// Horde Champions
	NPC_MOKRA										= 35572,
	NPC_ERESSEA										= 35569,
	NPC_RUNOK										= 35571,
	NPC_ZULTORE										= 35570,
	NPC_VISCERI										= 35617,

	// Alliance Champions
	NPC_JACOB										= 34705,
	NPC_AMBROSE										= 34702,
	NPC_COLOSOS										= 34701,
	NPC_JAELYNE										= 34657,
	NPC_LANA										= 34703,

	// Grand Champion Minions
	NPC_IRONFORGE_MINION							= 35329,
	NPC_STORMWIND_MINION							= 35328,
	NPC_GNOMEREGAN_MINION							= 35331,
	NPC_EXODAR_MINION								= 35330,
	NPC_DARNASSUS_MINION							= 35332,
	NPC_ORGRIMMAR_MINION							= 35314,
	NPC_SILVERMOON_MINION							= 35326,
	NPC_THUNDER_BLUFF_MINION						= 35325,
	NPC_SENJIN_MINION								= 35323,
	NPC_UNDERCITY_MINION							= 35327,

	NPC_EADRIC										= 35119,
	NPC_EADRIC_H									= 35518,
	NPC_PALETRESS									= 34928,
	NPC_PALETRESS_H									= 35517,

	NPC_ARGENT_LIGHTWIELDER							= 35309,
	NPC_ARGENT_MONK									= 35305,
	NPC_PRIESTESS									= 35307,

	NPC_BLACK_KNIGHT								= 35451,

	NPC_JAEREN										= 35004,
	NPC_ARELAS										= 35005,
	NPC_RISEN_JAEREN								= 35545,
	NPC_RISEN_ARELAS								= 35564,
	NPC_TIRION										= 33628,
};

enum eGameObjects
{
	GO_MAIN_GATE									= 195647,
	GO_SOUTH_PORTCULLIS								= 195649,
	GO_EAST_PORTCULLIS								= 195648,
	GO_NORTH_ORTCULLIS                              = 195650,

	GO_CHAMPIONS_LOOT								= 195709,
	GO_CHAMPIONS_LOOT_H								= 195710,

	GO_EADRIC_LOOT									= 195374,
	GO_EADRIC_LOOT_H								= 195375,

	GO_PALETRESS_LOOT								= 195323,
	GO_PALETRESS_LOOT_H								= 195324,
};

enum eVehicles
{
	VEHICLE_ARGENT_WARHORSE							= 35644,
	VEHICLE_ARGENT_BATTLEWORG						= 36558,

	VEHICLE_BLACK_KNIGHT							= 35491,
};

enum eTexts
{
	TEXT_LANA_STOUTHAMMER							= 1,
	TEXT_CHEER_LANA_STOUTHAMMER						= 2,
	TEXT_COLOSOS									= 3,
	TEXT_CHEER_COLOSOS								= 4,
	TEXT_EVENSONG									= 5,
	TEXT_CHEER_EVENSONG								= 6,
	TEXT_MARSHAL_JACOB_ALERIUS						= 7,
	TEXT_CHEER_MARSHAL_JACOB_ALERIUS				= 8,
	TEXT_AMBROSE_BOLTSPARK							= 9,
	TEXT_CHEER_AMBROSE_BOLTSPARK					= 10,

	TEXT_DEATHSTALKER_VESCERI						= 11,
	TEXT_CHEER_DEATHSTALKER_VESCERI					= 12,
	TEXT_RUNOK_WILDMANE								= 13,
	TEXT_CHEER_RUNOK_WILDMANE						= 14,
	TEXT_ZUL_TORE									= 15,
	TEXT_CHEER_ZUL_TORE								= 16,
	TEXT_MOKRA_SKILLCRUSHER							= 17,
	TEXT_CHEER_MOKRA_SKILLCRUSHER					= 18,
	TEXT_ERESSEA_DAWNSINGER							= 19,
	TEXT_CHEER_ERESSEA_DAWNSINGER					= 20,

	TEXT_WELCOME									= 21,
	TEXT_WELCOME_2									= 22,
	TEXT_BEGIN										= 23,
	TEXT_GRATZ_SLAIN_CHAMPIONS						= 24,
	TEXT_INTRODUCE_EADRIC							= 25,
	TEXT_INTRODUCE_PALETRESS						= 26,
	TEXT_CHEER_EADRIC_1								= 27,
	TEXT_CHEER_EADRIC_2								= 28,
	TEXT_EADRIC_SAY_1								= 39,
	TEXT_CHEER_PALETRESS_1							= 29,
	TEXT_CHEER_PALETRESS_2							= 30,
	TEXT_PALETRESS_SAY_1							= 37,
	TEXT_PALETRESS_SAY_2							= 38,
	TEXT_YOU_MAY_BEGIN								= 41,

	TEXT_BK_INTRO									= 31,
	TEXT_BK_RAFTERS									= 32,
	TEXT_BK_SPOILED									= 33,
	TEXT_BK_MEANING									= 34,
	TEXT_BK_LICH									= 35,
	TEXT_BK_TASK									= 36,

	TEXT_EADRIC_AGGRO								= 42,
	TEXT_EADRIC_HAMMER								= 43,
	TEXT_EADRIC_SLAIN_1								= 44,
	TEXT_EADRIC_SLAIN_2								= 45,
	TEXT_EADRIC_DEATH								= 46,

	TEXT_PALETRESS_AGGRO							= 47,
	TEXT_PALETRESS_MEMORY_SUMMON					= 48,
	TEXT_PALETRESS_MEMORY_DEFEATED					= 51,
	TEXT_PALETRESS_SLAIN_1							= 49,
	TEXT_PALETRESS_SLAIN_2							= 50,
	TEXT_PALETRESS_DEATH							= 52,

	TEXT_BK_AGGRO									= 53,
	TEXT_BK_SLAIN_1									= 57,
	TEXT_BK_SLAIN_2									= 58,
	TEXT_BK_SKELETON_RES							= 54,
	TEXT_BK_GHOST_RES								= 55,
	TEXT_BK_DEATH									= 56,
};

#endif
